package com.beg.cant.entity;


import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;

import java.time.LocalDateTime;

@Data
public class TransferBill {

    // 转账账单号（字符串类型，避免长数字精度丢失）
    @JSONField(name = "transfer_bill_no")
    private String transferBillNo;

    // 创建时间（ISO 8601 格式）
    @JSONField(name = "create_time")
    private LocalDateTime createTime;

    // 外部账单号
    @JSONField(name = "out_bill_no")
    private String outBillNo;

    // 转账状态（枚举类型）
    @JSONField(name = "state")
    private TransferState state;

    // 加密包信息（Base64 或其他加密格式）
    @JSONField(name = "package_info")
    private String packageInfo;
    private String mchId;
    private String appId;

    /**
     * 转账状态枚举
     */
    public enum TransferState {
        WAIT_USER_CONFIRM,
        PROCESSING,
        SUCCESS,
        FAILED
    }
}